iT邦幫忙

2017 iT 邦幫忙鐵人賽
DAY 22
1
Cloud

Xamarin.Forms, ASP.NET Core WEB API搭配AZURE服務與資料庫服務整合應用實例系列 第 22

Day22 - Azure App Service & Azure SQL Database Part1 Entity Framework Core本地開發篇

  • 分享至 

  • xImage
  •  

接下來要來正式開發業務人員打卡上傳WEB API, 預計資料欄位有下列幾項
Id: 流水號
Guid: 唯一識別碼
Name: 姓名
Email: Email
Locations: GPS座標
Comments: 註解
AddTime: 打卡時間

經過前幾次的ASP.NET CORE實作, 用到了Controller跟View, 就差Model還沒用上, 查了一下資料, 可以用Entity Framework Core來製作Model跟Database互動, 所以修改專案下project.json如下紅框所示
http://ithelp.ithome.com.tw/upload/images/20170104/2010333316cdxSdILf.png

接著新增一個Models目錄, 再加入SalesCheckIn.cs, 敲入底下程式碼
http://ithelp.ithome.com.tw/upload/images/20170104/20103333MCAVujCJ0O.png

再加入一個SalesCheckInContext.cs, 其程式碼如下
http://ithelp.ithome.com.tw/upload/images/20170104/201033338Iu6LcniqD.png

然後打開Satrtup.cs, 在ConfigureServices函式裡, 加入如紅框程式碼
http://ithelp.ithome.com.tw/upload/images/20170104/20103333TRACBhgQjS.png

接著要來測試一下EF ommand是否正常? 打開命令提示字元, 進到專案目錄下, 敲入dotnet ef, 成功畫面如底下所示, 若有異常, 就把錯誤訊息貼到Google搜尋
http://ithelp.ithome.com.tw/upload/images/20170104/20103333T7wzUPgaXA.png

再來輸入底下指令
dotnet ef migrations add InitialDatabase
http://ithelp.ithome.com.tw/upload/images/20170104/20103333F3Z2hOlDs5.png

成功之後, 會看到Migrations資料夾跟相關的cs檔, 這個是用來跟Database互動的
http://ithelp.ithome.com.tw/upload/images/20170104/20103333VQuo87fdtk.png

然後再輸入dotnet ef database update
http://ithelp.ithome.com.tw/upload/images/20170104/20103333Kbrn66YpjP.png

成功之後, 可以看到資料表已經被建立, 欄位也都開好了, 這就是傳說中Entity Framework的Code First模式
http://ithelp.ithome.com.tw/upload/images/20170104/201033339dmET1HfeR.png

用SQL語法新增一筆測試資料如下
http://ithelp.ithome.com.tw/upload/images/20170104/20103333bDYmwhbxoO.png

接著新增一個SalesController.cs, 其中包含三個函式, 一個取回所有資料列表, 一個是新增一筆資料, 最後一個可以發Push Message如底下所示
http://ithelp.ithome.com.tw/upload/images/20170104/20103333rPQEaVb8uA.png
http://ithelp.ithome.com.tw/upload/images/20170104/20103333h5umXQSqwP.png

然後把站台跑起來, 用Postman Get測試取得列表, 成功畫面如下
http://ithelp.ithome.com.tw/upload/images/20170104/201033333wIsmBuTJB.png

接下來用Post測試新增資料
http://ithelp.ithome.com.tw/upload/images/20170104/201033338VjiSyGohk.png

到MSSQL裡查看, 是否有新增成功? 如底下所示
http://ithelp.ithome.com.tw/upload/images/20170104/20103333LNgzpIADQw.png

再用Postman Get測試是否回傳多筆? 成功畫面如下
http://ithelp.ithome.com.tw/upload/images/20170104/20103333AXDsriwcfB.png

本文參照底下文章
https://docs.microsoft.com/en-us/aspnet/core/data/ef-mvc/intro

後記: Entity Framework還挺方便的, 一行SQL都沒寫到/images/emoticon/emoticon07.gif


上一篇
Day21 - Azure Mobile App & Azure Notification Hubs Part4 整合ASP.NET CORE WEB API篇
下一篇
Day23 - Azure App Service & Azure SQL Database Part2 ASP.NET CORE WEB API雲端部署篇
系列文
Xamarin.Forms, ASP.NET Core WEB API搭配AZURE服務與資料庫服務整合應用實例32
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言